package main

import "fmt"

// 可变参数函数。在调用时可以用任意数量的参数。 例如，fmt.Println 是一个常见的变参函数。
// 变参函数使用常规的调用方式，传入独立的参数。如果你有一个含有多个值的 slice，想把它们作为参数 使用，你要这样调用 func(slice...)。

func sum(nums ...int) {
	fmt.Println(nums, " ")
	total := 0
	for _, num := range nums {
		total += num
	}
	fmt.Println(total)
}

func main() {
	sum(1, 2)
	sum(1, 2, 3)
	nums := []int{1, 2, 3, 4, 5}
	sum(nums...)
	nums2 := nums[2:]
	sum(nums2...)
}